﻿using System;
using System.ComponentModel;
using Abp.Application.Services.Dto;
using Abp.AutoMapper;
using LeadThing.AbpZeroTemplate.DisputeInformations;

namespace LeadThing.AbpZeroTemplate.DisputeInformations.Dtos
{
    /// <summary>
    /// 矛盾纠纷信息列表Dto
    /// </summary>
    [AutoMapFrom(typeof(DisputeInformation))]
    public class DisputeInformationListDto : EntityDto<long>
    {
        /// <summary>
        /// 纠纷来源ID
        /// </summary>
        [DisplayName("纠纷来源")]
        public int SourceID { get; set; }
        /// <summary>
        /// 纠纷类型ID
        /// </summary>
        [DisplayName("纠纷类型")]
        public int DisputeTypeID { get; set; }
        /// <summary>
        /// 紧急程度ID
        /// </summary>
        [DisplayName("紧急程度")]
        public int UrgencyID { get; set; }
        /// <summary>
        /// 上传人
        /// </summary>
        [DisplayName("上传人")]
        public string UploadName { get; set; }
        /// <summary>
        /// 镇
        /// </summary>
        [DisplayName("镇")]
        public int TownID { get; set; }
        /// <summary>
        /// 区
        /// </summary>
        [DisplayName("区")]
        public int AreaID { get; set; }
        /// <summary>
        /// 村庄
        /// </summary>
        [DisplayName("村庄")]
        public int VillageID { get; set; }
        /// <summary>
        /// 当事人
        /// </summary>
        [DisplayName("当事人")]
        public string Party { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        [DisplayName("手机号")]
        public string Phone { get; set; }
        /// <summary>
        /// 涉及人数
        /// </summary>
        [DisplayName("涉及人数")]
        public int InvolveNum { get; set; }
        /// <summary>
        /// 事发地点
        /// </summary>
        [DisplayName("事发地点")]
        public string EventAddress { get; set; }

        /// <summary>
        /// 事件描述
        /// </summary>
        [DisplayName("事件描述")]
        public string EventDesc { get; set; }

        /// <summary>
        /// 调查取证
        /// </summary>
        [DisplayName("调查取证")]
        public string Evidence { get; set; }

        /// <summary>
        /// 协议书
        /// </summary>
        [DisplayName("协议书")]
        public string Agreement { get; set; }

        /// <summary>
        /// 图片封面
        /// </summary>
        [DisplayName("图片封面")]
        public string ImgUrl { get; set; }

        /// <summary>
        /// 意见
        /// </summary>
        [DisplayName("意见")]
        public string SuggestionDesc { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        [DisplayName("状态")]
        public int Status { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        [DisplayName("创建时间")]
        public DateTime CreationTime { get; set; }

        /// <summary>
        /// 分流处理镇ID
        /// </summary>
        [DisplayName("分流所属镇ID")]
        public int HandleTownID { get; set; }

        #region 扩展字段

        /// <summary>
        /// 镇名称
        /// </summary>
        [DisplayName("镇")]
        public string TownTitle { get; set; }

        /// <summary>
        /// 区名称
        /// </summary>
        [DisplayName("区")]
        public string AreaTitle { get; set; }

        /// <summary>
        /// 村名称
        /// </summary>
        [DisplayName("村庄")]
        public string VillageTitle { get; set; }

        /// <summary>
        /// 人员类型名称
        /// </summary>
        [DisplayName("人员类型ID")]
        public string PersonTypeTitle { get; set; }

        /// <summary>
        /// 纠纷来源ID
        /// </summary>
        [DisplayName("纠纷来源")]
        public string SourceTitle { get; set; }
        /// <summary>
        /// 纠纷类型ID
        /// </summary>
        [DisplayName("纠纷类型")]
        public string DisputeTypeTitle { get; set; }
        /// <summary>
        /// 紧急程度ID
        /// </summary>
        [DisplayName("紧急程度")]
        public string UrgencyTitle { get; set; }

        /// <summary>
        /// 是否显示菜单
        /// </summary>
        public bool ShowMenu { get; set; }

        /// <summary>
        /// X坐标
        /// </summary>
        [DisplayName("X坐标")]
        public string XPoint { get; set; }


        /// <summary>
        /// Y坐标
        /// </summary>
        [DisplayName("Y坐标")]
        public string YPoint { get; set; }

        /// <summary>
        /// 超期需提醒
        /// </summary>
        public string ChaoQi { get; set; }

        /// <summary>
        /// 当前步骤
        /// </summary>
        [DisplayName("当前步骤")]
        public string CurrentProcessName { get; set; }

        /// <summary>
        /// 状态名称
        /// </summary>
        public string StatusName { get; set; }
        #endregion
    }
}
